# 1. 指定CMake最低版本要求
cmake_minimum_required(VERSION 3.10)

# 2. 设置项目信息
project(
    27remove_target          # 项目名称
    VERSION 1.0.0           # 项目版本
    DESCRIPTION "Simple C++ Project"
    LANGUAGES CXX           # 支持的语言
)

# 设置C++标准
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_C_COMPILER "g++")
# 源文件收集
file(GLOB_RECURSE SOURCES "src/*.cpp")   # 递归收集源文件
file(GLOB_RECURSE HEADERS "include/*.h")  # 头文件

# 8. 创建目标
# 可执行文件目标
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})

# 14. 自定义目标
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
# 设置输出目录
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)

# 配置调试信息（默认启用）
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
    add_compile_options(-g3 -O0)
endif()

# 13.2 生成版本信息
configure_file(
    ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Version.hpp.in
    ${CMAKE_CURRENT_BINARY_DIR}/Version.hpp
)



